﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace GrayParrot.Web.Controls
{
    public enum FilterTypes
    {
        [Description("text")]
        Text = 0,
        [Description("date")]
        Date,
        [Description("range_date")]
        DateRange,
        [Description("range_number")]
        NumberRange,
        [Description("range_number_slider")]
        NumberRangeSlider,
        [Description("select")]
        Select,
        [Description("multi_select")]
        MultiSelect,
        [Description("auto_complete")]
        AutoComplete,
        [Description("custom_func")]
        CustomFunc,
        [Description("multi_select_custom_func")]
        MultiSelectCustomFunc,
        [Description("custom_choice")]
        CustomChoice
    }

    public enum SelectTypes
    {
        [Description("select2")]
        Simple = 0,
        [Description("select2")]
        Select2 = 1,
        //[Description("chosen")]
        //Chosen
    }

    [Serializable]
    //[TypeConverter(typeof(ExpandableObjectConverter))]
    public class ColumnFilter
    {
        public string ColumnName { get; set; }
        public FilterTypes Type { get; set; }
        public string FilterContainerId { get; set; }
        public string DefaultLabel { get; set; }
        public bool ShowResetButton { get; set; }

        //public string DateFormat { get; set; }

        public ColumnFilter()
        {

        }
    }
}
